﻿using System;

namespace RayDen.Library.Core.Primitives
{

    public interface IColorType : IRgbConvertible, IWavelengthDependentValue, ICloneable
    {
        bool IsBlack();
        IColorType Add(IColorType color);
        IColorType Mul(IColorType color);
        IColorType Add(float f);
        IColorType Mul(float f);

        RgbSpectrum ToXyz();
        float Filter();

        void ToZero();
        void ToUnit();

        IColorType CloneValue();
    }
}
